<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Pin: EXCEPTION_INFO Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Pin
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structEXCEPTION__INFO-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">EXCEPTION_INFO Struct Reference<div class="ingroups"><a class="el" href="group__API__REF.html">Instrumentation API Reference</a> &raquo; <a class="el" href="group__EXCEPTION.html">Exception API</a></div></div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionEXCEPTION__INFO_1_1EXCEPTION__SPECIFIC.html">EXCEPTION_SPECIFIC</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4fb6bf3f8ea8229baa273e032f9189b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a4fb6bf3f8ea8229baa273e032f9189b4">Init</a> (<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> exceptCode, ADDRINT exceptAddress)</td></tr>
<tr class="separator:a4fb6bf3f8ea8229baa273e032f9189b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7112da340c116d867ced906a462c111d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a7112da340c116d867ced906a462c111d">GetExceptCode</a> () const</td></tr>
<tr class="separator:a7112da340c116d867ced906a462c111d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae3221bcff018059b529a8661d48e0ac"><td class="memItemLeft" align="right" valign="top"><a id="aae3221bcff018059b529a8661d48e0ac"></a>
<a class="el" href="group__EXCEPTION.html#ga5df924df3b9302a6ace8043c7b640b91">EXCEPTION_CLASS</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetExceptClass</b> () const</td></tr>
<tr class="separator:aae3221bcff018059b529a8661d48e0ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada9c451b449df35e664978423dc24d9e"><td class="memItemLeft" align="right" valign="top">ADDRINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ada9c451b449df35e664978423dc24d9e">GetExceptAddress</a> () const</td></tr>
<tr class="separator:ada9c451b449df35e664978423dc24d9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c4fe1253941020fb71d25e4142e8b08"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a9c4fe1253941020fb71d25e4142e8b08">SetExceptAddress</a> (ADDRINT exceptAddress)</td></tr>
<tr class="separator:a9c4fe1253941020fb71d25e4142e8b08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9b29e1688e91d306f3a227efb3c760d"><td class="memItemLeft" align="right" valign="top"><a id="aa9b29e1688e91d306f3a227efb3c760d"></a>
BOOL&#160;</td><td class="memItemRight" valign="bottom"><b>IsTrap</b> () const</td></tr>
<tr class="separator:aa9b29e1688e91d306f3a227efb3c760d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6535f5fb7abc23493d21bae10dc76e3"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ae6535f5fb7abc23493d21bae10dc76e3">Reset</a> ()</td></tr>
<tr class="separator:ae6535f5fb7abc23493d21bae10dc76e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1b2a3697f708b96b364adcf8b53eaf1"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ad1b2a3697f708b96b364adcf8b53eaf1">IsEmpty</a> () const</td></tr>
<tr class="separator:ad1b2a3697f708b96b364adcf8b53eaf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ffee372f31729a3dbd7397387c1e065"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a4ffee372f31729a3dbd7397387c1e065">ToString</a> () const</td></tr>
<tr class="separator:a4ffee372f31729a3dbd7397387c1e065"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d52fee2a695eba0ae8b28ac017e05f2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a9d52fee2a695eba0ae8b28ac017e05f2">GetCodeAsString</a> () const</td></tr>
<tr class="separator:a9d52fee2a695eba0ae8b28ac017e05f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38805e75e4e010221d53bfaaeb7f1d21"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a38805e75e4e010221d53bfaaeb7f1d21">InitAccessFault</a> (<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> exceptCode, ADDRINT exceptAddress, ADDRINT accessAddress, <a class="el" href="group__EXCEPTION.html#gaac933421583f1cc06fe1b5d6e14ba332">FAULTY_ACCESS_TYPE</a> accessType=<a class="el" href="group__EXCEPTION.html#ggaac933421583f1cc06fe1b5d6e14ba332ab3feb58b1035c56b5af0a8697fd508ae">FAULTY_ACCESS_TYPE_UNKNOWN</a>)</td></tr>
<tr class="separator:a38805e75e4e010221d53bfaaeb7f1d21"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae45e5395edf678fb9a5a41a1d5d716b5"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ae45e5395edf678fb9a5a41a1d5d716b5">IsAccessFault</a> () const</td></tr>
<tr class="separator:ae45e5395edf678fb9a5a41a1d5d716b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a528a40f4a85cf843d5cd26917b241c29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__EXCEPTION.html#gaac933421583f1cc06fe1b5d6e14ba332">FAULTY_ACCESS_TYPE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a528a40f4a85cf843d5cd26917b241c29">GetFaultyAccessType</a> () const</td></tr>
<tr class="separator:a528a40f4a85cf843d5cd26917b241c29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab11437acdf248440905bd0df51790b1f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ab11437acdf248440905bd0df51790b1f">GetFaultyAccessAddress</a> (ADDRINT *pAccessAddress) const</td></tr>
<tr class="separator:ab11437acdf248440905bd0df51790b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbd475c28638e7f4c9f79e8d2a0af02d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#afbd475c28638e7f4c9f79e8d2a0af02d">InitMultipleFpError</a> (<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> exceptCode, ADDRINT exceptAddress, UINT32 fpErrors)</td></tr>
<tr class="separator:afbd475c28638e7f4c9f79e8d2a0af02d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44b7910ae3dd9c08c682631026fcf282"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a44b7910ae3dd9c08c682631026fcf282">IsMultipleFpException</a> () const</td></tr>
<tr class="separator:a44b7910ae3dd9c08c682631026fcf282"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0bd73e9df35745a389be48f5487fb17"><td class="memItemLeft" align="right" valign="top">UINT32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ac0bd73e9df35745a389be48f5487fb17">GetFpErrors</a> () const</td></tr>
<tr class="separator:ac0bd73e9df35745a389be48f5487fb17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad487eb0b376e3e4fe8a7d0919f7aa367"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ad487eb0b376e3e4fe8a7d0919f7aa367">InitWindowsSysException</a> (UINT32 sysExceptCode, ADDRINT exceptAddress, UINT32 numArgs=0, const ADDRINT *pArgs=0)</td></tr>
<tr class="separator:ad487eb0b376e3e4fe8a7d0919f7aa367"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6f9438e48e55111ed6165d34b1eb313"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#ac6f9438e48e55111ed6165d34b1eb313">IsWindowsSysException</a> () const</td></tr>
<tr class="separator:ac6f9438e48e55111ed6165d34b1eb313"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abaecaeadee779f7d1334621e99a84bb4"><td class="memItemLeft" align="right" valign="top">UINT32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#abaecaeadee779f7d1334621e99a84bb4">GetWindowsSysExceptionCode</a> () const</td></tr>
<tr class="separator:abaecaeadee779f7d1334621e99a84bb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a090824e5eb2652c3b7e7bf94adc473c6"><td class="memItemLeft" align="right" valign="top">UINT32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a090824e5eb2652c3b7e7bf94adc473c6">CountWindowsSysArguments</a> () const</td></tr>
<tr class="separator:a090824e5eb2652c3b7e7bf94adc473c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd8273665be270fb1aa651b7bebda4d1"><td class="memItemLeft" align="right" valign="top">ADDRINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#afd8273665be270fb1aa651b7bebda4d1">GetWindowsSysArgument</a> (UINT32 argNum) const</td></tr>
<tr class="separator:afd8273665be270fb1aa651b7bebda4d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:aa4b023cc1d11ff1e1bc46a63efb434bb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="group__EXCEPTION.html#ga5df924df3b9302a6ace8043c7b640b91">EXCEPTION_CLASS</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#aa4b023cc1d11ff1e1bc46a63efb434bb">GetExceptClass</a> (<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> exceptCode)</td></tr>
<tr class="separator:aa4b023cc1d11ff1e1bc46a63efb434bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ee10f26486e14ff0b93dfbc785cc8d3"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a4ee10f26486e14ff0b93dfbc785cc8d3">IsTrap</a> (<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> exceptCode)</td></tr>
<tr class="separator:a4ee10f26486e14ff0b93dfbc785cc8d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a49e056b659b28d0700a6ea5c8a80592c"><td class="memItemLeft" align="right" valign="top"><a id="a49e056b659b28d0700a6ea5c8a80592c"></a>
<a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a49e056b659b28d0700a6ea5c8a80592c">m_exceptCode</a></td></tr>
<tr class="separator:a49e056b659b28d0700a6ea5c8a80592c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47387b0466f5484c7a1ad07455101ce5"><td class="memItemLeft" align="right" valign="top"><a id="a47387b0466f5484c7a1ad07455101ce5"></a>
ADDRINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structEXCEPTION__INFO.html#a47387b0466f5484c7a1ad07455101ce5">m_exceptAddress</a></td></tr>
<tr class="separator:a47387b0466f5484c7a1ad07455101ce5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b83373f170bfdc14a5e49c63dceee02"><td class="memItemLeft" align="right" valign="top"><a id="a2b83373f170bfdc14a5e49c63dceee02"></a>
union <a class="el" href="unionEXCEPTION__INFO_1_1EXCEPTION__SPECIFIC.html">EXCEPTION_INFO::EXCEPTION_SPECIFIC</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_specific</b></td></tr>
<tr class="separator:a2b83373f170bfdc14a5e49c63dceee02"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Structure (POD) that describes an exception </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a090824e5eb2652c3b7e7bf94adc473c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a090824e5eb2652c3b7e7bf94adc473c6">&#9670;&nbsp;</a></span>CountWindowsSysArguments()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">UINT32 EXCEPTION_INFO::CountWindowsSysArguments </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The number of arguments associated with the Windows system exception </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCODE_WINDOWS exception. </dd></dl>

</div>
</div>
<a id="a9d52fee2a695eba0ae8b28ac017e05f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d52fee2a695eba0ae8b28ac017e05f2">&#9670;&nbsp;</a></span>GetCodeAsString()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string EXCEPTION_INFO::GetCodeAsString </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The name of the exception's code. </dd></dl>

</div>
</div>
<a id="ada9c451b449df35e664978423dc24d9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada9c451b449df35e664978423dc24d9e">&#9670;&nbsp;</a></span>GetExceptAddress()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ADDRINT EXCEPTION_INFO::GetExceptAddress </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The address of the instruction that caused the exception </dd></dl>

</div>
</div>
<a id="aa4b023cc1d11ff1e1bc46a63efb434bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4b023cc1d11ff1e1bc46a63efb434bb">&#9670;&nbsp;</a></span>GetExceptClass()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="group__EXCEPTION.html#ga5df924df3b9302a6ace8043c7b640b91">EXCEPTION_CLASS</a> EXCEPTION_INFO::GetExceptClass </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td>
          <td class="paramname"><em>exceptCode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The class of the exception </dd></dl>

</div>
</div>
<a id="a7112da340c116d867ced906a462c111d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7112da340c116d867ced906a462c111d">&#9670;&nbsp;</a></span>GetExceptCode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a> EXCEPTION_INFO::GetExceptCode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The code of the exception </dd></dl>

</div>
</div>
<a id="ab11437acdf248440905bd0df51790b1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab11437acdf248440905bd0df51790b1f">&#9670;&nbsp;</a></span>GetFaultyAccessAddress()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EXCEPTION_INFO::GetFaultyAccessAddress </td>
          <td>(</td>
          <td class="paramtype">ADDRINT *&#160;</td>
          <td class="paramname"><em>pAccessAddress</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the address of the faulty memory access, if known. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">pAccessAddress</td><td>optional pointer to variable that receives the address of the faulty memory access, if known. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>TRUE, if the address of the faulty memory access is known </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCLASS_ACCESS_FAULT exception. </dd></dl>

</div>
</div>
<a id="a528a40f4a85cf843d5cd26917b241c29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a528a40f4a85cf843d5cd26917b241c29">&#9670;&nbsp;</a></span>GetFaultyAccessType()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__EXCEPTION.html#gaac933421583f1cc06fe1b5d6e14ba332">FAULTY_ACCESS_TYPE</a> EXCEPTION_INFO::GetFaultyAccessType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The type of the faulty memory access. </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCLASS_ACCESS_FAULT exception. </dd></dl>

</div>
</div>
<a id="ac0bd73e9df35745a389be48f5487fb17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0bd73e9df35745a389be48f5487fb17">&#9670;&nbsp;</a></span>GetFpErrors()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">UINT32 EXCEPTION_INFO::GetFpErrors </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The exception's bit mask of FP exception codes. </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCLASS_MULTIPLE_FP_ERROR exception. </dd></dl>

</div>
</div>
<a id="afd8273665be270fb1aa651b7bebda4d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd8273665be270fb1aa651b7bebda4d1">&#9670;&nbsp;</a></span>GetWindowsSysArgument()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ADDRINT EXCEPTION_INFO::GetWindowsSysArgument </td>
          <td>(</td>
          <td class="paramtype">UINT32&#160;</td>
          <td class="paramname"><em>argNum</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the specified Windows system exception's argument. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">argNum</td><td>ordinal number of the argument to be retrieved, starting from zero. The value of this parameter should not exceed the value returned by the <a class="el" href="structEXCEPTION__INFO.html#a090824e5eb2652c3b7e7bf94adc473c6">CountWindowsSysArguments()</a> function. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The value of the specified system exception's argument </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCODE_WINDOWS exception. </dd></dl>

</div>
</div>
<a id="abaecaeadee779f7d1334621e99a84bb4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abaecaeadee779f7d1334621e99a84bb4">&#9670;&nbsp;</a></span>GetWindowsSysExceptionCode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">UINT32 EXCEPTION_INFO::GetWindowsSysExceptionCode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The Windows system exception code </dd></dl>
<dl class="section pre"><dt>Precondition</dt><dd>This structure should describe an EXCEPTCODE_WINDOWS exception. </dd></dl>

</div>
</div>
<a id="a4fb6bf3f8ea8229baa273e032f9189b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4fb6bf3f8ea8229baa273e032f9189b4">&#9670;&nbsp;</a></span>Init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a>&amp; EXCEPTION_INFO::Init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td>
          <td class="paramname"><em>exceptCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>exceptAddress</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Initialize this structure with the given generic exception's attributes. Set "unknown" state for all exception-specific attributes. This function is useful when the specified exception code does not require any additional exception information or such information is not available. The function can not be used to initialize EXCEPTCODE_WINDOWS exception information. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptCode</td><td>exception code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptAddress</td><td>address of the instruction that caused the exception </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to this structure </dd></dl>

</div>
</div>
<a id="a38805e75e4e010221d53bfaaeb7f1d21"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38805e75e4e010221d53bfaaeb7f1d21">&#9670;&nbsp;</a></span>InitAccessFault()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a>&amp; EXCEPTION_INFO::InitAccessFault </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td>
          <td class="paramname"><em>exceptCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>exceptAddress</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>accessAddress</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaac933421583f1cc06fe1b5d6e14ba332">FAULTY_ACCESS_TYPE</a>&#160;</td>
          <td class="paramname"><em>accessType</em> = <code><a class="el" href="group__EXCEPTION.html#ggaac933421583f1cc06fe1b5d6e14ba332ab3feb58b1035c56b5af0a8697fd508ae">FAULTY_ACCESS_TYPE_UNKNOWN</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Initialize this structure with the given attributes of an EXCEPTCLASS_ACCESS_FAULT exception. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptCode</td><td>exception code that specifies an EXCEPTCLASS_ACCESS_FAULT exception </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptAddress</td><td>address of the instruction that caused the exception </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">accessAddress</td><td>address of the faulty memory access </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">accessType</td><td>type of the faulty memory access </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to this structure </dd></dl>

</div>
</div>
<a id="afbd475c28638e7f4c9f79e8d2a0af02d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afbd475c28638e7f4c9f79e8d2a0af02d">&#9670;&nbsp;</a></span>InitMultipleFpError()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a>&amp; EXCEPTION_INFO::InitMultipleFpError </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td>
          <td class="paramname"><em>exceptCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>exceptAddress</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UINT32&#160;</td>
          <td class="paramname"><em>fpErrors</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Initialize this structure with the given attributes of an EXCEPTCLASS_MULTIPLE_FP_ERROR exception. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptCode</td><td>exception code that specifies an EXCEPTCLASS_MULTIPLE_FP_ERROR exception </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptAddress</td><td>address of the instruction that caused the exception </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fpErrors</td><td>bit mask of FP exception codes </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to this structure </dd></dl>

</div>
</div>
<a id="ad487eb0b376e3e4fe8a7d0919f7aa367"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad487eb0b376e3e4fe8a7d0919f7aa367">&#9670;&nbsp;</a></span>InitWindowsSysException()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structEXCEPTION__INFO.html">EXCEPTION_INFO</a>&amp; EXCEPTION_INFO::InitWindowsSysException </td>
          <td>(</td>
          <td class="paramtype">UINT32&#160;</td>
          <td class="paramname"><em>sysExceptCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>exceptAddress</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">UINT32&#160;</td>
          <td class="paramname"><em>numArgs</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const ADDRINT *&#160;</td>
          <td class="paramname"><em>pArgs</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Initialize this structure with the given attributes of an EXCEPTCODE_WINDOWS exception. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sysExceptCode</td><td>the system exception code </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">exceptAddress</td><td>address of the instruction that caused the exception </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">numArgs</td><td>number of arguments in the [pArgs] array. The number should not exceed the MAX_WINDOWS_EXCEPTION_ARGS value. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">pArgs</td><td>pointer to an array of arguments associated with the exception or NULL if the number of arguments is zero </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>reference to this structure </dd></dl>

</div>
</div>
<a id="ae45e5395edf678fb9a5a41a1d5d716b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae45e5395edf678fb9a5a41a1d5d716b5">&#9670;&nbsp;</a></span>IsAccessFault()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EXCEPTION_INFO::IsAccessFault </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>TRUE if this structure describes an EXCEPTCLASS_ACCESS_FAULT exception </dd></dl>

</div>
</div>
<a id="ad1b2a3697f708b96b364adcf8b53eaf1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1b2a3697f708b96b364adcf8b53eaf1">&#9670;&nbsp;</a></span>IsEmpty()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EXCEPTION_INFO::IsEmpty </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>TRUE, if this structure has been reset and does not contain a valid exception information. </dd></dl>

</div>
</div>
<a id="a44b7910ae3dd9c08c682631026fcf282"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44b7910ae3dd9c08c682631026fcf282">&#9670;&nbsp;</a></span>IsMultipleFpException()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EXCEPTION_INFO::IsMultipleFpException </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>TRUE if this structure describes an EXCEPTCLASS_MULTIPLE_FP_ERROR exception </dd></dl>

</div>
</div>
<a id="a4ee10f26486e14ff0b93dfbc785cc8d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ee10f26486e14ff0b93dfbc785cc8d3">&#9670;&nbsp;</a></span>IsTrap()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static BOOL EXCEPTION_INFO::IsTrap </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__EXCEPTION.html#gaf0466590c8a28e50202536adfed9ff1e">EXCEPTION_CODE</a>&#160;</td>
          <td class="paramname"><em>exceptCode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>TRUE if the specified exception is a trap. Traps are reported in the context that represents state of registers after executing the instruction that caused the trap. The exception address and the value of the PC register in the trap context are different. </dd></dl>

</div>
</div>
<a id="ac6f9438e48e55111ed6165d34b1eb313"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6f9438e48e55111ed6165d34b1eb313">&#9670;&nbsp;</a></span>IsWindowsSysException()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EXCEPTION_INFO::IsWindowsSysException </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>TRUE if this structure describes an EXCEPTCODE_WINDOWS exception </dd></dl>

</div>
</div>
<a id="ae6535f5fb7abc23493d21bae10dc76e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6535f5fb7abc23493d21bae10dc76e3">&#9670;&nbsp;</a></span>Reset()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">VOID EXCEPTION_INFO::Reset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Remove the exception information and initialize this structure as empty. </p>

</div>
</div>
<a id="a9c4fe1253941020fb71d25e4142e8b08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c4fe1253941020fb71d25e4142e8b08">&#9670;&nbsp;</a></span>SetExceptAddress()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">VOID EXCEPTION_INFO::SetExceptAddress </td>
          <td>(</td>
          <td class="paramtype">ADDRINT&#160;</td>
          <td class="paramname"><em>exceptAddress</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set the address of the instruction that caused the exception </p>

</div>
</div>
<a id="a4ffee372f31729a3dbd7397387c1e065"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ffee372f31729a3dbd7397387c1e065">&#9670;&nbsp;</a></span>ToString()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string EXCEPTION_INFO::ToString </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The string representation of this structure. </dd></dl>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>exception.PH</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
